Ubuntu出现内存错误,但MemTest86 +却没有 | 您所在的位置:网站首页 › dimm 错误 › Ubuntu出现内存错误,但MemTest86 +却没有 |
删除的答案已关闭
关于此问答的答案已删除: 您是否已经尝试过重新安装ubuntu,因为这听起来像是操作系统级别的内存管理故障 我的答案是相似的,因为它涉及非常低级的内存管理。内核级别的KASLR。 KASLR做什么KASLR代表ķ ernel 甲 ddress 小号步伐大号 ayout ř andomization。我从没听过它大声说过的声音,但是在我看来,我说它是“ Casler”。想想机器中友好的幽灵。KASLR是一种安全措施,用于随机分配内核模块所驻留的内存位置。从理论上讲,当您不能始终依靠相同的代码始终位于相同的内存位置时,内核就很难被破解。 可以将KASLR操作视为与存储器测试器相反的操作,该存储器测试器重复读取和写入相同的存储器位置,并且预期不会发生任何变化。这些对立面,吸引了我(注意成语),对KASRR和内存错误进行了Google搜索。似乎无关的一个人可能值得在github上链接到此问答的消息。原因是他们认为它们是唯一受移位内存地址影响的地址(如果我正确读取了它们的线程)。我最不希望链接到RedHat的前三则热门歌曲是因为他们的网站是要在Google搜索机器人上获得的部分帖子,然后它们使您付费阅读。 当KASLR将内核“材料”加载到内存映射的中间(这是不应该这样做的)时,存在一些已知的问题。不幸的是,我记不起上周发现的链接,该链接包含在今晚的答案中。该链接有一个补丁/解决方法,用于指示KASLR不使用特定的内存位置。 在确认了KASLR和内存位置的已知问题之后,我在问题下进行了评论,以使其禁用KASLR并重新运行内存测试。回复说它似乎成功了,所以我要发布这个答案。 如何禁用KASLR尽管我已经使用grub内核命令行选项“ kaslr”数年了,但从至少4.12版本开始,它就成为了内核的默认选项。要避免加载KASLR,请使用edit /etc/default/grub并更改以下行: GRUB_CMDLINE_LINUX_DEFAULT="quiet splash nokaslr"除了“安静”和“启动”之外,您可能还有其他选择。重要的步骤是添加“ nokaslr”,并保留其他选项。 然后保存文件并运行: sudo update-grub当然,禁用KASLR的另一种方法是在未自动包含KASLR的情况下,仅在Ubuntu 16.04.1下使用较旧的内核(如4.4.0)。 |
CopyRight 2018-2019 实验室设备网 版权所有 |